The process of communicating information among or between electronic circuits often employs binary data formatted as multibit code. Multibit code is typically a digital arrangement or sequence of binary bits that can represent information such as numbers, characters, analog information, etc. Examples of applications that can employ multibit codes include product serial numbers, individualized device data, compensation coefficients for a specific device, last calibration date, etc. For example, sensing and measurement applications can utilize compensation coefficients to perform post-measurement adjustment of transducer signals based on temperature, pressure, manufacturing variations, etc. Such compensation coefficients are typically generated at the end of the transducer manufacturing process and can be stored with the transducer in a non-volatile memory.
Multibit code can be stored with a particular device by programming an internal Erasable and Electrically Programmable Read Only Memory (EEPROM) via a serial interface. Multibit code can also be stored external to a device, for example, on an external EEPROM. In certain applications, the (internal or external) EEPROM can be read when power is turned on, and the device can utilize the data internally, or it can be communicated externally, for compensation, etc.
In certain cases, the use of multibit code stored in an EEPROM can be either impossible or undesirable to use. One example of such a case is when the device is used in very high temperature applications, which can cause an EEPROM to operate improperly, or to fail. The use of an EEPROM may also be inappropriate for use in certain applications, such as in aircraft sensors, which can require stringent certification when memory and communication are part of the device. Such certification can be very lengthy and expensive.
When EEPROM or other memory circuits cannot be used (or are otherwise undesirable), the multibit code can be represented and communicated by utilizing several pins, which at the manufacturing stage can be individually connected either to ground or to the power supply. In this method, each pin can correspond to one bit of the code. When the pin is connected to ground, for example, the corresponding bit can represent a “zero” (0); and when the pin is connected to the power supply or left open, the corresponding bit can represent a “one” (1). The disadvantage of this method is the large number of pins on the device that may be required to represent and communicate the multibit data. Even for relatively narrow range of codes, the number of pins can be significant. For example, eight pins can be required in order to be able to represent all codes between 0 and 255.
A need exists for improved systems and methods that can enable the representation of more than one bit per pin.